<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Class template month_functor</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../../date_time/doxy.html#header.boost.date_time.adjust_functors_hpp" title="Header &lt;boost/date_time/adjust_functors.hpp&gt;">
<link rel="prev" href="day_functor.html" title="Class template day_functor">
<link rel="next" href="week_functor.html" title="Class template week_functor">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="day_functor.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../date_time/doxy.html#header.boost.date_time.adjust_functors_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="week_functor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.date_time.month_functor"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template month_functor</span></h2>
<p>boost::date_time::month_functor — Provides calculation to find next nth month given a date. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../date_time/doxy.html#header.boost.date_time.adjust_functors_hpp" title="Header &lt;boost/date_time/adjust_functors.hpp&gt;">boost/date_time/adjust_functors.hpp</a>&gt;

</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> date_type<span class="special">&gt;</span> 
<span class="keyword">class</span> <a class="link" href="month_functor.html" title="Class template month_functor">month_functor</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
  <span class="comment">// types</span>
  <span class="keyword">typedef</span> <span class="identifier">date_type</span><span class="special">::</span><span class="identifier">duration_type</span> <a name="boost.date_time.month_functor.duration_type"></a><span class="identifier">duration_type</span><span class="special">;</span>
  <span class="keyword">typedef</span> <span class="identifier">date_type</span><span class="special">::</span><span class="identifier">calendar_type</span> <a name="boost.date_time.month_functor.cal_type"></a><span class="identifier">cal_type</span><span class="special">;</span>     
  <span class="keyword">typedef</span> <span class="identifier">cal_type</span><span class="special">::</span><span class="identifier">ymd_type</span>       <a name="boost.date_time.month_functor.ymd_type"></a><span class="identifier">ymd_type</span><span class="special">;</span>     
  <span class="keyword">typedef</span> <span class="identifier">cal_type</span><span class="special">::</span><span class="identifier">day_type</span>       <a name="boost.date_time.month_functor.day_type"></a><span class="identifier">day_type</span><span class="special">;</span>     

  <span class="comment">// <a class="link" href="month_functor.html#boost.date_time.month_functorconstruct-copy-destruct">construct/copy/destruct</a></span>
  <a class="link" href="month_functor.html#id-1_3_14_15_3_2_1_1_2_9-bb"><span class="identifier">month_functor</span></a><span class="special">(</span><span class="keyword">int</span><span class="special">)</span><span class="special">;</span>

  <span class="comment">// <a class="link" href="month_functor.html#id-1_3_14_15_3_2_1_1_2_8-bb">public member functions</a></span>
  <span class="identifier">duration_type</span> <a class="link" href="month_functor.html#id-1_3_14_15_3_2_1_1_2_8_1-bb"><span class="identifier">get_offset</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="identifier">duration_type</span> <a class="link" href="month_functor.html#id-1_3_14_15_3_2_1_1_2_8_2-bb"><span class="identifier">get_neg_offset</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="id-1.3.14.15.3.2.4.4"></a><h2>Description</h2>
<p>This adjustment function provides the logic for 'month-based' advancement on a ymd based calendar. The policy it uses to handle the non existant end of month days is to back up to the last day of the month. Also, if the starting date is the last day of a month, this functor will attempt to adjust to the end of the month. </p>
<div class="refsect2">
<a name="id-1.3.14.15.3.2.4.4.3"></a><h3>
<a name="boost.date_time.month_functorconstruct-copy-destruct"></a><code class="computeroutput">month_functor</code> 
        public
       construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><pre class="literallayout"><a name="id-1_3_14_15_3_2_1_1_2_9-bb"></a><span class="identifier">month_functor</span><span class="special">(</span><span class="keyword">int</span> f<span class="special">)</span><span class="special">;</span></pre></li></ol></div>
</div>
<div class="refsect2">
<a name="id-1.3.14.15.3.2.4.4.4"></a><h3>
<a name="id-1_3_14_15_3_2_1_1_2_8-bb"></a><code class="computeroutput">month_functor</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><pre class="literallayout"><span class="identifier">duration_type</span> <a name="id-1_3_14_15_3_2_1_1_2_8_1-bb"></a><span class="identifier">get_offset</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_type</span> <span class="special">&amp;</span> d<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre></li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">duration_type</span> <a name="id-1_3_14_15_3_2_1_1_2_8_2-bb"></a><span class="identifier">get_neg_offset</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_type</span> <span class="special">&amp;</span> d<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns a negative duration_type. </li>
</ol></div>
</div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2001-2005 CrystalClear Software, Inc<p>Subject to the Boost Software License, Version 1.0. (See accompanying file
    <code class="filename">LICENSE_1_0.txt</code> or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="day_functor.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../date_time/doxy.html#header.boost.date_time.adjust_functors_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="week_functor.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
